package com.etop.bank.utils;

import android.content.Context;
import android.os.Environment;

import java.util.HashMap;

/**
 * 用来配置银行卡识别库的一些信息
 */
public class BankConfig {

    /**
     * 改为你授权文件的全名
     */
    public static final String licenseId = "076E23617821AC2A08F4.lic";
    public static final String nc_obj_bin = "nc_obj.bin";
    public static final String nc_obj_param = "nc_obj.param";
    public static final String bc_nc_param = "bc_nc.param";
    public static final String bc_nc_dic = "bc_nc.dic";
    public static final String bc_nc_bin = "bc_nc.bin";

    /**
     * 授权类型：分为 0x01 绑定手机序列号授权，0x02 绑定应用名和应用包名，0x03 绑定应用包名授权（默认）
     * <p>
     * 0x02说明：授权文件绑定的是应用名和应用包名，初始化识别核心会根据授权绑定信息去校验应用名和应用包名
     * <p>
     * 0x03说明：授权文件只绑定应用包名，初始化识别核心会根据授权绑定信息只校验应用包名
     * <p>
     * 也就是说，你授权文件绑定的应用名和应用包名，就把这个值改为0x02；授权文件只绑定了应用包名，就是默认的 0x03
     * <p>
     * 授权类型不对，也是激活失败 ErrorCode：24 的原因之一
     */
    public static final int nAultType = 0x03;

    /**
     * 保存图像的路径
     */
    public static String saveImagePath = Environment.getExternalStorageDirectory().getPath() + "/alpha/Bank/";

    // 用于适配API 29
    public static void saveImagePath(Context context) {
        saveImagePath = context.getExternalFilesDir("IdCard") + "/";
    }

    /**
     * 是否保存裁剪图
     */
    public static final boolean isSaveCrop = true;
    /**
     * 是否显示横竖屏切换按钮
     */
    public static final boolean isDriection = false;
    /**
     * 是否显示动态扫描线
     */
    public static final boolean isScanLine = false;

    /**
     * 是否保存识别区域图
     */
    public static final boolean isSaveImage = true;

    public static String getErrorInfo(int initCode) {
        if (initCode > 19 && initCode < 26) {
            HashMap<Integer, String> errorMap = new HashMap<>();
            errorMap.put(20, "请参考开发文档");
            errorMap.put(21, "未读取到授权文件");
            errorMap.put(22, "授权文件名称不能修改");
            errorMap.put(23, "请参考开发文档");
            errorMap.put(24, "授权信息验证失败");
            errorMap.put(25, "授权已到期");
            return errorMap.get(initCode);
        } else {
            return "";
        }
    }

    /**
     * 设置识别区域参数
     * 修改识别区域需要同时修改对应的VinSacnRectView扫描框布局
     */
    //横屏银行卡竖向
    public static double TOP_H_SCALE = 0.13;  // 竖向距离 框顶部距离 缩放比
    public static double SCAN_SCALE = 1.52; // 识别框 宽高缩放比
    // 竖向参数
    public static double BUTTOM_V_SCALE = 1.6; // 竖向距离 底部距离 缩放比
}
